package cn.stylefeng.guns.modular.gridsystem.temperature.model.contants;


import cn.hutool.extra.spring.SpringUtil;
import cn.stylefeng.guns.modular.gridsystem.enums.temp.TempConfigUtil;
import cn.stylefeng.guns.modular.gridsystem.enums.temp.TempDictType;
import cn.stylefeng.guns.modular.gridsystem.temperature.utils.ConfigDictUtils;
import lombok.Data;

@Data
//@Component
public class TempConstant {
    //多个值
    public static final Integer ERROR_TYPE_ONE = 1;//温度过高预警

    public static final Integer ERROR_TYPE_TWO = 2;//温度波动异常预警

    public static final String DICT_ERROR_TYPE = "temp_err_type";//温度过高预警
    //单个值
    public static Integer TEMP_RECORD_INTERVAL;//= "temp_record_Interval";

    public static Integer TEMP_ERROR_INTERVAL;// = "temp_error_interval";

    public static Integer TEMP_MAX_VALUE;//= "temp_max_value";

    public static Integer TEMP_CHA_VALUE; //temp_cha_value  (外体温度与内体实际的温度值的温度差值，比如机壳温度30度  内部实际温度应该是 32度左右 +2就是差值)

    public static Integer TEMP_BO_VALUE; //temp_bo_value  波动值（离最大值 的差距值  比如最大值40 波动值是5   那就是超过  35<=x<40）

    public static Integer TEMP_BO_NUMBER;  //temp_bo_number 波动次数（默认3次 3次以上为波动异常）


    static {
        //@PostConstruct
        //public void init() {

        TEMP_RECORD_INTERVAL = Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_RECORD_INTERVAL));

        TEMP_ERROR_INTERVAL = Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_ERROR_INTERVAL));

        TEMP_MAX_VALUE = Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_MAX_VALUE));

        TEMP_CHA_VALUE = Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_CHA_VALUE));

        TEMP_BO_VALUE = Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_BO_VALUE));

        TEMP_BO_NUMBER = Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_BO_NUMBER));


    }
    public Integer TEMP_RECORD_INTERVAL(){
        return Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_RECORD_INTERVAL));
    }
    public Integer TEMP_ERROR_INTERVAL(){
        return Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_ERROR_INTERVAL));
    }
    public Integer TEMP_MAX_VALUE(){
        return Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_MAX_VALUE));
    }
    public Integer TEMP_CHA_VALUE(){
        return Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_CHA_VALUE));
    }
    public Integer TEMP_BO_VALUE(){
        return Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_BO_VALUE));
    }
    public Integer TEMP_BO_NUMBER(){
        return Integer.parseInt(TempConfigUtil.getValue(TempDictType.TEMP_BO_NUMBER));
    }

}
